#include "app_pool.h"
#include "unistd.h" //sleep需要的
void task(void *data)
{
    log_info("task execute... %d", *(int *)data);
}
int main()
{
    app_pool_init(10);
    for (size_t i = 0; i < 20; i++) //这里虽然执行20次，消息队列和线程池只有10个，但是会阻塞，而任务这里没加while，
    {
        // 这里只是为了区分数字
        // app_pool_register_task(task ,&i ); //测试结果会发现log_info打印的data基本都是20，因为给每个线程传递的都是i的地址
        // int j = i ;
        // app_pool_register_task(task ,&j ); //这样也不行， j是个临时变量，用完就销毁了，导致for循环后面j的地址可能还是同一个
        int *j = malloc(sizeof(int));
        *j = i;
        app_pool_register_task(task, j); // 这样肯定没问题，因为每个j都是单独的内存 ，每次执行哦都是不同的数字
    }
    sleep(100000);
    return 0;
}
